package com.mingzhi.lotterysystem.service.activitystatus.operator;

import com.mingzhi.lotterysystem.service.dto.ConvertActivityStatusDTO;
import org.springframework.stereotype.Component;

/**
 * AbstractActivityOperator:抽象活动操作符
 */
@Component
public abstract class AbstractActivityOperator {

    /**
     * 根据返回的顺序 表示抽象类不同的子类
     * sequence：顺序
     * 1：人员、奖品
     * 2：活动
     *
     * @return
     */
    public abstract Integer sequence();


    /**
     * needConvert:是否需要转换
     *
     * @return
     */
    public abstract Boolean needConvert(ConvertActivityStatusDTO convertActivityStatusDTO);

    /**
     * 真正的转换方法
     *
     * @param convertActivityStatusDTO
     * @return
     */
    public abstract Boolean convert(ConvertActivityStatusDTO convertActivityStatusDTO);
}

